package org.ims.inv.service.worklog;

import java.util.List;

import org.ims.inv.model.worklog.ModelWorkDailyLog;

import cn.trymore.core.exception.ServiceException;
import cn.trymore.core.service.ServiceGeneric;
import cn.trymore.core.web.paging.PaginationSupport;
import cn.trymore.core.web.paging.PagingBean;

/**
 * Service: 工作日志 - Daily
 * 
 * @author Jeccy.Zhao
 *
 */
public interface ServiceWorkDailyLog
extends ServiceGeneric<ModelWorkDailyLog>
{
	/**
	 * 根据给定日期所在周的所有日期日志
	 * 
	 * @param date
	 * @param category
	 * @return
	 * @throws ServiceException
	 */
	List<ModelWorkDailyLog> getWeekDailyLogByDate (String date, 
			Integer category) throws ServiceException;
	
	/**
	 * 根据时间范围及用户获取工作日志
	 * 
	 * @param startDate
	 * @param endDate
	 * @param userIds
	 * @return
	 * @throws ServiceException
	 */
	List<ModelWorkDailyLog> getWeekDailyLogByUsers (String startDate, 
			String endDate, String[] userIds) throws ServiceException;
	
	/**
	 * 根据时间范围获取所有工作日志
	 * 
	 * @param startDate
	 * @param endDate
	 * @param domain
	 * @return
	 * @throws ServiceException
	 */
	PaginationSupport<ModelWorkDailyLog> getPaginationDailyLogByRangeDate (String startDate, 
			String endDate, ModelWorkDailyLog domain, PagingBean pagingBean) throws ServiceException;
	
}
